// package main

// import (
// 	"database/sql"
// 	"time"

// 	"gorm.io/driver/mysql"
// 	"gorm.io/gorm"
// 	"gorm.io/gorm/schema"
// )

// type Location struct {
// 	X, Y int
// }
// type User struct {
// 	ID           uint
// 	Name         string
// 	Email        string
// 	Age          uint8
// 	Birthday     *time.Time
// 	MemberNumber sql.NullString
// 	ActivatedAt  sql.NullTime
// 	CreatedAt    int64 `gorm:"autoCreateTime"`
// 	UpdatedAt    int64 `gorm:"autoCreateTime"`
// 	// Location     Location
// }

// // 是否存在表
// func ExistTable(mdb *gorm.DB) {
// 	if mdb.Migrator().HasTable(&User{}) {
// 		mdb.Migrator().DropTable(&User{})
// 	} else {
// 		mdb.AutoMigrate(&User{})
// 	}
// }

// // 批量添加
// func BatchCreate(mdb *gorm.DB) {
// 	now := time.Now()
// 	users := []User{{Name: "jinzhu1"}, {Name: "jinzhu2"}, {Name: "jinzhu3", Birthday: &now}}
// 	mdb.Create(&users)
// }

// type Result struct {
// 	Name string
// 	Age  int
// }

// func main() {
// 	db, err := Conn()
// 	if err != nil {
// 		panic(err)
// 	}
// 	//是否存在表
// 	// ExistTable(db)
// 	//批量添加
// 	// BatchCreate(MDB)
// 	// mdb.Model(User{}).Create(map[string]interface{}{
// 	// 	"Name":     "jinzhu",
// 	// 	"Location": clause.Expr{SQL: "ST_PointFromText(?)", Vars: []interface{}{"POINT(100 100)"}},
// 	// })
// 	var result Result
// 	db.Raw("SELECT name, age FROM fa_users WHERE name = ?", "Antonio").Scan(&result)

// }

// func Conn() (*gorm.DB, error) {
// 	dsn := "root:root@tcp(127.0.0.1:3306)/ant_study?charset=utf8mb4&parseTime=True&loc=Local"
// 	db, err := gorm.Open(mysql.New(mysql.Config{
// 		DSN: dsn,
// 	}), &gorm.Config{
// 		NamingStrategy: schema.NamingStrategy{
// 			TablePrefix: "fa_",
// 			// SingularTable: false,
// 		},
// 	})
// 	if err != nil {
// 		return nil, err
// 	}

// 	sqlDb, err := db.DB()
// 	if err != nil {
// 		return nil, err
// 	}
// 	//设置空闲连接池中的最大连接数
// 	sqlDb.SetMaxIdleConns(10)
// 	//设置数据库的最大打开连接数
// 	sqlDb.SetMaxOpenConns(100)
// 	//设置连接可以重复使用的最长时间。
// 	sqlDb.SetConnMaxLifetime(time.Hour)
// 	return db, nil
// }
